package com.inspur.dgov.vlbod.util;

import java.time.LocalDateTime;
import java.time.ZoneOffset;

public class TimeUtils {

    /**
     * 将时间戳（毫秒）转换为LocalDateTime日期时间
     * @param timeStamp 时间戳（毫秒）
     * @return LocalDateTime日期时间
     */
    public static LocalDateTime getLocalDateTimeFromTimeStamp(long timeStamp) {
        //获取系统默认时区
        ZoneOffset zoneOffset = ZoneOffset.systemDefault().getRules().getOffset(LocalDateTime.now());
        //将时间戳转换为LocalDateTime
        LocalDateTime localDateTime = LocalDateTime.ofEpochSecond(timeStamp / 1000, (int)(timeStamp % 1000) * 1000000, zoneOffset);
        return localDateTime;

    }
    
    /**
     * 将LocalDateTime日期时间转换为时间戳（毫秒）
     * @param localDateTime LocalDateTime日期时间
     * @return 时间戳（毫秒）
     */
    public static long getTimeStampFromLocalDateTime(LocalDateTime localDateTime) {
        //获取当前时间的毫秒数
        long timeStamp = localDateTime.toInstant(ZoneOffset.of("+8")).toEpochMilli();
        return timeStamp;
    }
}
